cellular_router_cumulocity_agent_5

# Request for inventory item
10,100,GET,/inventory/managedObjects/%%,,application/json,%%,UNSIGNED,

### Device ###

# Request for device ID
10,101,GET,/identity/externalIds/c8y_Serial/%%,,application/vnd.com.nsn.cumulocity.externalId+json,%%,STRING,
# Request for device XID
10,102,POST,/identity/globalIds/%%/externalIds,application/json,,%%,STRING STRING,"{""externalId"":""%%"",""type"":""c8y_Serial""}"
# Create device
10,103,POST,/inventory/managedObjects,application/json,application/json,%%,STRING UNSIGNED,"{""name"":""%%"",""type"":""c8y_cumulocity_agent"",""c8y_IsDevice"":{},""com_cumulocity_model_Agent"":{},""c8y_RequiredAvailability"":{""responseInterval"":%%}}"

# List of child devices
10,104,GET,/inventory/managedObjects/%%/childDevices,,application/json,%%,UNSIGNED,

# List of supported operations
10,105,PUT,/inventory/managedObjects/%%,application/json,,%%,UNSIGNED STRING,"{""c8y_SupportedOperations"":[%%]}"

# Change operation status
10,106,PUT,/devicecontrol/operations/%%,application/json,,%%,UNSIGNED STRING,"{""status"":""%%""}"
10,107,PUT,/devicecontrol/operations/%%,application/json,,%%,UNSIGNED STRING,"{""status"":""FAILED"",""failureReason"":""%%""}"

# List of log kinds for upload
10,108,PUT,/inventory/managedObjects/%%,application/json,,%%,UNSIGNED STRING,"{""c8y_SupportedLogs"":[%%]}"
# Upload log
10,109,PUT,/devicecontrol/operations/%%,application/json,,%%,UNSIGNED STRING STRING STRING STRING INTEGER STRING STRING,"{""status"":""%%"",""c8y_LogfileRequest"":{""logFile"":""%%"",""dateFrom"":""%%"",""dateTo"":""%%"",""maximumLines"":%%,""searchText"":""%%"",""file"":""%%""}}"

# Information about hardware
10,110,PUT,/inventory/managedObjects/%%,application/json,,%%,UNSIGNED STRING STRING,"{""c8y_Hardware"":{""model"":""%%"",""serialNumber"":""%%""}}"

# Information about firmware
10,111,PUT,/inventory/managedObjects/%%,application/json,,%%,UNSIGNED STRING STRING,"{""c8y_Firmware"":{""name"":""%%"",""version"":""%%""}}"

# Information about network settings
10,112,PUT,/inventory/managedObjects/%%,application/json,,%%,UNSIGNED STRING,"{""c8y_Network"":{%%}}"

# Information about mobile part
10,113,PUT,/inventory/managedObjects/%%,application/json,,%%,UNSIGNED STRING STRING STRING,"{""c8y_Mobile"":{""imei"":""%%"",""cellId"":""%%"",""iccid"":""%%""}}"

# Create DumpConfiguration
10,114,POST,/inventory/managedObjects,application/json,application/json,%%,STRING STRING STRING,"{""name"":""%%"",""description"":""%%"",""url"":""%%"",""type"":""c8y_ConfigurationDump""}"
# Assign DumpConfiguratin to device
10,115,PUT,/inventory/managedObjects/%%,application/json,,%%,UNSIGNED UNSIGNED,"{""c8y_ConfigurationDump"":{""id"":""%%""}}"
# Send text configuration
10,116,PUT,/inventory/managedObjects/%%,application/json,,%%,UNSIGNED STRING,"{""c8y_Configuration"":{""config"":""%%""}}"

# List of installed software (modules)
10,117,PUT,/inventory/managedObjects/%%,application/json,,%%,UNSIGNED STRING,"{""c8y_SoftwareList"":[%%]}"

###

11,500,$.managedObject,,$.id
11,501,,$.c8y_IsDevice,$.id

# Restart request
11,502,,$.c8y_Restart,$.id

# Install firmware request
11,503,,$.c8y_Firmware,$.id,$.c8y_Firmware.url,$.c8y_Firmware.name,$.c8y_Firmware.version

# Log request
11,504,,$.c8y_LogfileRequest,$.id,$.c8y_LogfileRequest.logFile,$.c8y_LogfileRequest.dateFrom,$.c8y_LogfileRequest.dateTo,$.c8y_LogfileRequest.maximumLines,$.c8y_LogfileRequest.searchText

# Config file request
11,505,,$.c8y_UploadConfigFile,$.id
11,506,,$.c8y_DownloadConfigFile,$.id,$.c8y_DownloadConfigFile.url,$.c8y_DownloadConfigFile.c8y_ConfigurationDump.id

# Config Dump response
11,507,,$.url,$.id

# Install software request
11,508,$.c8y_SoftwareList,,$.name,$.version,$.url
11,509,,$.c8y_SoftwareList,$.id

### Measurements ###

# General
10,200,POST,/measurement/measurements,application/json,,%%,NOW UNSIGNED STRING STRING STRING NUMBER STRING,"{""time"":""%%"",""source"":{""id"":""%%""},""type"":""%%"",""%%"":{""%%"":{""value"":%%,""unit"":""%%""}}}"
# CPU load
10,201,POST,/measurement/measurements,application/json,,%%,NOW UNSIGNED NUMBER,"{""time"":""%%"",""source"":{""id"":""%%""},""type"":""c8y_CPUMeasurement"",""c8y_CPUMeasurement"":{""workload"":{""value"":%%,""unit"":""%""}}}"
# Free memory
10,202,POST,/measurement/measurements,application/json,,%%,NOW UNSIGNED UNSIGNED NUMBER,"{""time"":""%%"",""source"":{""id"":""%%""},""type"":""c8y_MemoryMeasurement"",""c8y_MemoryMeasurement"":{""total"":{""value"":%%,""unit"":""MiB""},""used"":{""value"":%%,""unit"":""%""}}}"
# Free storage space
10,203,POST,/measurement/measurements,application/json,,%%,NOW UNSIGNED NUMBER NUMBER,"{""time"":""%%"",""source"":{""id"":""%%""},""type"":""Storage"",""Storage"":{""free_system"":{""value"":%%,""unit"":""%""},""free_user"":{""value"":%%,""unit"":""%""}}}"
# Internal temperature
10,204,POST,/measurement/measurements,application/json,,%%,NOW UNSIGNED NUMBER,"{""time"":""%%"",""source"":{""id"":""%%""},""type"":""Temperature"",""Temperature"":{""internal"":{""value"":%%,""unit"":""°C""}}}"
# Power supply
10,205,POST,/measurement/measurements,application/json,,%%,NOW UNSIGNED NUMBER,"{""time"":""%%"",""source"":{""id"":""%%""},""type"":""PowerSupply"",""PowerSupply"":{""voltage"":{""value"":%%,""unit"":""V""}}}"
# Mobile signal for 1st module
10,206,POST,/measurement/measurements,application/json,,%%,NOW UNSIGNED NUMBER NUMBER,"{""time"":""%%"",""source"":{""id"":""%%""},""type"":""Mobile1Signal"",""Mobile1Signal"":{""strength"":{""value"":%%,""unit"":""dBm""},""quality"":{""value"":%%,""unit"":""dB""}}}"
# Mobile signal for 2nd module
10,207,POST,/measurement/measurements,application/json,,%%,NOW UNSIGNED NUMBER NUMBER,"{""time"":""%%"",""source"":{""id"":""%%""},""type"":""Mobile2Signal"",""Mobile2Signal"":{""strength"":{""value"":%%,""unit"":""dBm""},""quality"":{""value"":%%,""unit"":""dB""}}}"

### Sensors ###

# Geolocation data
10,250,PUT,/inventory/managedObjects/%%,application/json,,%%,UNSIGNED UNSIGNED NUMBER NUMBER,"{""c8y_Position"":{""alt"":%%,""lat"":%%,""lng"":%%}}"

# GPIO
10,251,PUT,/inventory/managedObjects/%%,application/json,,%%,UNSIGNED STRING,"{""c8y_RelayArray"":[%%]}"

### Alarms and events

#10,300,PUT,/alarm/alarms/%%,application/json,,%%,UNSIGNED STRING,"{""status"":""%%""}"

### Modbus ###

# Set communication configuration
10,400,PUT,/inventory/managedObjects/%%,application/json,,%%,UNSIGNED UNSIGNED UNSIGNED STRING UNSIGNED,"{""c8y_SerialConfiguration"":{""baudRate"":%%,""dataBits"":%%,""parity"":""%%"",""stopBits"":%%}}"
10,401,PUT,/inventory/managedObjects/%%,application/json,,%%,UNSIGNED UNSIGNED UNSIGNED UNSIGNED,"{""c8y_ModbusConfiguration"":{""pollingRate"":%%,""transmitRate"":%%,""protocol"":""TCP"",""maxFieldbusVersion"":%%}}"

# Get configured devices
10,402,GET,/inventory/managedObjects/%%/childDevices?pageSize=100,,application/json,%%,UNSIGNED,

# Communication configuration changed
11,403,,$.c8y_SerialConfiguration,$.id,$.c8y_SerialConfiguration.baudRate,$.c8y_SerialConfiguration.dataBits,$.c8y_SerialConfiguration.parity,$.c8y_SerialConfiguration.stopBits,$.deviceId
11,404,,$.c8y_ModbusConfiguration,$.id,$.c8y_ModbusConfiguration.pollingRate,$.c8y_ModbusConfiguration.transmitRate,$.deviceId

# Added RTU device
11,405,,$.c8y_ModbusDevice,$.c8y_ModbusDevice.protocol,$.c8y_ModbusDevice.address,$.c8y_ModbusDevice.id,$.c8y_ModbusDevice.type,$.id
# Requested (by 402 msg) info about RTU device 
11,406,$.references,,$.managedObject.c8y_ModbusDevice.protocol,$.managedObject.c8y_ModbusDevice.address,$.managedObject.id,$.managedObject.c8y_ModbusDevice.type
# Added TCP device
11,407,,$.c8y_ModbusDevice,$.c8y_ModbusDevice.ipAddress,$.c8y_ModbusDevice.address,$.c8y_ModbusDevice.id,$.c8y_ModbusDevice.type,$.id
# Requested (by 402 msg) info about TCP device 
11,408,$.references,,$.managedObject.c8y_ModbusDevice.ipAddress,$.managedObject.c8y_ModbusDevice.address,$.managedObject.id,$.managedObject.c8y_ModbusDevice.type

# Requested (by 100 msg) coils and descrete input definitions
11,409,$.c8y_Coils,,$.number,$.input
11,410,$.c8y_Coils,$.alarmMapping,$.number,$.input,$.alarmMapping.raiseAlarmTemplate
11,411,$.c8y_Coils,$.eventMapping,$.number,$.input,$.eventMapping.eventTemplate
11,412,$.c8y_Coils,$.measurementMapping,$.number,$.input,$.measurementMapping.sendMeasurementTemplate
11,413,$.c8y_Coils,$.statusMapping,$.number,$.input,$.statusMapping.status
11,414,,$.c8y_SetCoil,$.id,$.deviceId,$.c8y_SetCoil.coil,$.c8y_SetCoil.value

# Requested (by 100 msg) input registers and holding registers definitions
11,415,$.c8y_Registers,,$.number,$.input,$.noBits,$.startBit,$.multiplier,$.divisor,$.decimalPlaces,$.signed
# This message is necessary as Cumulocity doesn't write littleEndian property to certain inventory until you change it
11,416,$.c8y_Registers,,$.number,$.input,$.littleEndian,$.startBit
11,417,$.c8y_Registers,$.alarmMapping,$.number,$.input,$.alarmMapping.raiseAlarmTemplate,$.startBit
11,418,$.c8y_Registers,$.eventMapping,$.number,$.input,$.eventMapping.eventTemplate,$.startBit
11,419,$.c8y_Registers,$.measurementMapping,$.number,$.input,$.measurementMapping.sendMeasurementTemplate,$.startBit
11,420,$.c8y_Registers,$.statusMapping,$.number,$.input,$.statusMapping.status,$.startBit
11,421,,$.c8y_SetRegister,$.id,$.deviceId,$.c8y_SetRegister.register,$.c8y_SetRegister.startBit,$.c8y_SetRegister.noBits,$.c8y_SetRegister.value

11,422,,$.c8y_useServerTime,$.c8y_useServerTime


11,423,alarms,$.c8y_ModbusSource,$.id,$.source.id,$.c8y_ModbusSource.coil.number,$.c8y_ModbusSource.coil.input
11,424,alarms,$.c8y_ModbusSource,$.id,$.source.id,$.c8y_ModbusSource.register.number,$.c8y_ModbusSource.register.startBit,$.c8y_ModbusSource.register.noBits,$.c8y_ModbusSource.register.input

11,425,$.operations,$.c8y_ModbusDevice,$.c8y_ModbusDevice.ipAddress,$.c8y_ModbusDevice.address,$.c8y_ModbusDevice.id,$.c8y_ModbusDevice.type,$.id
11,426,$.operations,$.c8y_ModbusDevice,$.c8y_ModbusDevice.protocol,$.c8y_ModbusDevice.address,$.c8y_ModbusDevice.id,$.c8y_ModbusDevice.type,$.id

